Coinductive Constraint Logic Programming
نویسندگان
چکیده
Constraint logic programming (CLP) has been proposed as a declarative paradigm for merging constraint solving and logic programming. Recently, coinductive logic programming has been proposed as a powerful extension of logic programming for handling (rational) infinite objects and reasoning about their properties. Coinductive logic programming does not include constraints while CLP’s declarative semantics is given in terms of a least fixed-point (i.e., it is inductive) and cannot directly support reasoning about (rational) infinite objects and their properties. In this paper we combine constraint logic programming and coinduction to obtain co-constraint logic programming (co-CLP for brevity). We present the declarative semantics of co-CLP in terms of a greatest fixed-point and its operational semantics based on the coinductive hypothesis rule. We prove the equivalence of these two semantics for programs with rational terms.
منابع مشابه
Type Inference by Coinductive Logic Programming
We propose a novel approach to constraint-based type inference based on coinductive logic. Constraint generation corresponds to translation into a conjunction of Horn clauses P , and constraint satisfaction is defined in terms of the coinductive Herbrand model of P . We illustrate the approach by formally defining this translation for a small object-oriented language similar to Featherweight Ja...
متن کاملVerifying Complex Continuous Real-Time Systems with Coinductive CLP(R)
Timed automata has been used as a powerful formalism for specifying, designing, and analyzing real time systems. We consider the generalization of timed automata to Pushdown Timed Automata (PTA). We show how PTAs can be elegantly modeled via logic programming extended with coinduction and constraints over reals. We use this logic programming realization of a PTA to develop an elegant solution t...
متن کاملModel Checking Timed LTL: A Logic Programming-based Approach
In this paper, first, we introduce a temporal logic for specification of real-time systems. Our logic, called RTLTL, is an extension of linear temporal logic (LTL) with clocks and clock operations adopted from timed automata. RTLTL is a natural and simple language for specifying properties of real time systems. Second, we develop a model checker for RTLTL based on logic programming. We show how...
متن کاملStructural Resolution: a Framework for Coinductive Proof Search and Proof Construction in Horn Clause Logic
Logic programming (LP) is a programming language based on first-order Horn clause logic that uses SLD-resolution as a semi-decision procedure. Finite SLD-computations are inductively sound and complete with respect to least Herbrand models of logic programs. Dually, the corecursive approach to SLD-resolution views infinite SLD-computations as successively approximating infinite terms contained ...
متن کاملCoinductive Logic Programming
We describe the implementation of coinductive logic programming found in Logtalk, discussing its features and limitations. As Logtalk uses as a back-end compiler a compatible Prolog system, we discuss the status of key Prolog features for an efficient and usable implementation of coinduction.
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2012